<template>
	<view>
		<view class="margin-top padding text-xxl">欢迎使用STRIVE基础框架</view>
		<view class="padding"><u-input v-model="info.username" type="text" placeholder="请输入登录名" :custom-style="{ fontSize: '36rpx' }" /></view>
		<view class="padding"><u-input v-model="info.password" type="password" placeholder="请输入密码" :custom-style="{ fontSize: '36rpx' }" /></view>
		<view class="padding"><u-button type="primary" @click="finish">登录</u-button></view>
		<view class="padding-lr flex justify-end text-grey"><view @click="navTo('./index')">验证码登录</view></view>
		<view class="padding margin-top">
			<!-- #ifndef MP -->
			<view>
				<text class="text-bold">使用范围：</text>
				本程序仅用于STRIVE基础框架后台配置，使用前请先登录。
			</view>
			<!-- #endif -->
			<!-- #ifdef MP -->
			<view>
				<text class="text-bold">使用范围：</text>
				本小程序仅用于STRIVE基础框架后台配置，使用前请先登录。
			</view>
			<!-- #endif -->
		</view>
	</view>
</template>

<script>
import qs from 'qs';
export default {
	data() {
		return {
			info: {
				username: '', // 用户名
				password: '', // 密码
				grant_type: 'password', //
				loginType: 'web' //
			}
		};
	},
	computed: {},
	methods: {
		navTo: function(url) {
			uni.navigateTo({
				url: url
			});
		},
		finish: function() {
			this.$request.post(
				`/oauth/token?${qs.stringify(this.info)}`,
				{},
				res => {
					if (res.access_token) {
						uni.setStorageSync(this.$config.tokenName, res.access_token);
						this.$request.get(
							'/admin/sys/user_info',
							{},
							res => {
								uni.setStorageSync(this.$config.userInfoName, res.data);
								uni.switchTab({
									url: '../index/index',
									fail: () => {
										uni.redirectTo({
											url: '../index/index',
										})
									}
								});
							},
							true,
							true,
							true
						);
					}
				},
				true,
				true,
				false
			);
		}
	}
};
</script>

<style lang="scss">
page {
	background-color: #ffffff;
}
</style>
